/**
 * @Author: LAMMU
 * @FilePath: /nuxt3-template/Users/lammu/Desktop/workplace-vite/template/vite.config.js
 * @Date: 2023-05-14 22:34:56
 * @LastEditors: LAMMU
 * @LastEditTime: 2023-05-15 00:12:00
 * @Description: 请添加文件描述
 */
import { defineConfig } from "vite";
import vue from "@vitejs/plugin-vue";
import viteCompression from 'vite-plugin-compression';

// https://vitejs.dev/config/
export default defineConfig({
  base: "/microappB/",
  plugins: [
    vue({
      template: {
        compilerOptions: {
          // 将wc-前缀的标签名都视为自定义元素
          isCustomElement: (tag) => tag.startsWith('wc-') || tag.startsWith('micro-app')
        }
      }
    }),
    viteCompression({
      algorithm: 'gzip', /** 压缩算法 */
      ext: '.gz', /** 生成的文件后缀 */
      threshold: 1024*20, /** 对超过10k的数据压缩 */
      verbose: false, /** 禁止在控制台输出压缩结果 */
      filter: /\.(js|mjs|json|css|html)$/i, /** 对这些文件进行压缩 */
      deleteOriginFile: false /** 是否删除原文件 */
    })
  ],
  server: {
    port: 2334,
    host: "0.0.0.0",
    headers: {
      "Access-Control-Allow-Origin": "*",
    },
    /** 代理到父应用, 本地可以使用yarn preview查看子应用独立运行情况 */
    proxy: {
      '/admin': {
        target: 'http://localhost:2666',
      }
    },
  },
  resolve: {
    alias: {
      // 'vue': 'https://cdn.bootcdn.net/ajax/libs/vue/3.2.41/vue.esm-browser.prod.min.js',
      // 'vue-router': 'https://cdn.bootcdn.net/ajax/libs/vue-router/4.1.6/vue-router.esm-browser.min.js',
    },
    extensions: ['.js', '.vue', '.css'],
  }
});
